//package com.allwees.data.dataport.module.useraction.service.impl;
//
//import com.allwees.data.dataport.module.base.doc.EsDoc;
//import com.allwees.data.dataport.module.useraction.service.LogService;
//import lombok.extern.slf4j.Slf4j;
//import org.apache.commons.collections4.CollectionUtils;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.data.domain.Page;
//import org.springframework.data.domain.PageRequest;
//import org.springframework.data.elasticsearch.repository.ElasticsearchRepository;
//import org.springframework.stereotype.Service;
//
//@Service
//@Slf4j
//public abstract class LogServiceImpl<L extends EsDoc, R extends ElasticsearchRepository<L, String>> implements LogService<L> {
//
//    @Autowired
//    protected R logEsRepository;
//
//    @Override
//    public void saveToEs(L logData) {
//        logEsRepository.save(logData);
//    }
//
//    @Override
//    public void refresh(int total) {
//        log.info("同步中>>>>>>>>>>>>>>>>> total:{}", total);
//
//        int s = 1000;
//        int i = 0;
//        for (; i <= total; i = i + s) {
//            log.info("同步中>>>>>>>>>>>>>>>>> i:{},s:{}", i, s);
//
//            PageRequest request = PageRequest.of(i, s);
//            Page<L> page = logEsRepository.findAll(request);
//
//            if (CollectionUtils.isEmpty(page.getContent())) {
//                break;
//            }
//            log.info("同步中>>>>>>>>>>>>>>>>> page.content.size:{}", page.getContent().size());
//
//            for (L l: page.getContent()){
//                logEsRepository.save(l);
//            }
//        }
//        log.info("同步中结束>>>>>>>>>>> i:{}", i);
//    }
//}
